Async Callback
A common interface that all asynchronous callbacks must extend.
Parameters
<P>
the type of the object that represents the callback parameters
<R>
the type of the object that can be used to provide the callback response for the given callback parameters asynchronously